#ifndef REGISTER_H
#define REGISTER_H

#include <QMainWindow>
#include <QPushButton>
#include <QLabel>
#include <QListWidget>
#include <QTreeWidget>
#include <QSlider>
#include <QTimer>
#include <QGridLayout>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QDateTime>
#include <QTabWidget>
#include <QTreeWidgetItem>
#include <QMouseEvent>
#include <QStackedWidget>
#include <QLineEdit>
#include <QMap>
#include <QMessageBox>

class Register : public QWidget
{
    Q_OBJECT
public:
    explicit Register(QWidget *parent = nullptr);
signals:
    // 注册请求信号(传递用户名和密码)
    void registerRequested(const QString &username, const QString &password);
    // 切换到登录界面的信号
    void switchToLogin();
    // 新增：注册成功信号，携带用户名
    void registerSuccess(const QString &username);
private slots:
    void on_btnRegister_clicked();      // 注册按钮点击事件
    void on_btnToLogin_clicked();       // 返回登录按钮点击事件
private:
    void initRegisterInterface();       // 初始化注册界面
    bool checkRegisterInput();          // 校验注册输入合法性
    // ==================== 注册界面组件 ====================
    QLabel *m_labRegisterTitle;
    QLabel *m_labRegisterUser;
    QLineEdit *m_edtRegisterUser;
    QLabel *m_labRegisterPwd;
    QLineEdit *m_edtRegisterPwd;
    QLabel *m_labRegisterConfirmPwd;
    QLineEdit *m_edtRegisterConfirmPwd;
    QPushButton *m_btnRegister;
    QPushButton *m_btnToLogin;

};

#endif // REGISTER_H
